Color printing has traditionally required the integration of many unique and varied talents to see a project through from conception to a printed page. Prior to "desktop publishing," ideas or concepts were typically first drawn by hand and photographed, any text or illustrations added, and the aggregate of pictures and text used to produce a printed page. The traditional process generally required, in addition to design personnel, a paste-up person, typesetting bureau and a lithography department that would produce separations from the photographs. Desktop publishing has relieved some of the burden of publishers by allowing color production, i.e., drawing and layout, to be integrated electronically using personal computers. Color documents can now be designed, enhanced, color-corrected, and separated on a computer "desktop." The success of desktop publishing is, in large part, the result of standards-based computer programs such as the page description language (PDL) PostScript.RTM. from Adobe Systems Incorporated of Mountain View, Calif. The PostScript language has become the industry standard that serves as an intermediary between applications packages, e.g., desktop publishing programs, and PDL-compatible composite reproduction equipment, such as a desktop printer. The applications packages translate information for a page into PDL for transmission to the PDL-compatible desktop printer. The PDL-compatible printer includes an interpreter that converts the PDL code to low-level instructions that indicate to the printer how to render the text and graphics. Alternatively, the information can be transferred to a file for importation by another applications program or for use by a service bureau. The process of interpreting and rendering PDL is often performed within a raster image processor or "RIP." For further information on the PostScript programming language, please see PostScript Language Reference Manual, 2nd Ed., by Adobe Systems, Inc., published by Addison Wesley, which is hereby incorporated by reference.
A desktop printer uses toner to produce the colors comprising a color publication. Because composite printing is generally efficient only for small quantity jobs, larger quantities of the same publication are generally reproduced on a commercial printing press using ink. Methods of printing color publications using a commercial printer press include process-color printing, spot-color printing, or a combination of the two. Process-color printing separates the original image into its cyan (C), magenta (M), yellow (Y), and black (K) components to recreate the original shadings of color in the publication. This is accomplished by printing dots of the process-color inks in different combinations in close proximity to simulate a variety of colors on a printed page. Spot-color printing involves printing one or more specific colors (or inks) that have been specified according to a color matching system. One popular color matching system is the PANTONE.TM. MATCHING SYSTEM by Pantone, Inc. Spot-color printing is often used to produce colors that are not easily produced using CMYK inks, such as silver, gold, and fluorescent colors. Spot-color printing is also used in lieu of printing the four process colors, such as when only a couple of inks are required for a particular publication.
Before a color publication can be reproduced on a commercial printing press, each page containing composite art must be separated into its component colors by printing a film separation for each ink (cyan, magenta, yellow, and black, if process colors are to be printed) and any spot colors. Thus, process-color printing always requires four film separations. Spot-color printing requires a separation for each color being printed. A commercial printer uses these film separations to create the printing plates used on the press. For instance, if one specifies the four process colors and a single spot color in a publication, there will be five separations, and hence printing plates, for each page. A separate component ink is added by each plate as the pages in the publication pass through the press. For a more detailed explanation of the commercial printing process, please see the Commercial Printing Guide from PageMaker.RTM., Version 5.0. PageMaker.RTM. is a desktop publishing program produced by Aldus Corporation, the assignee of the present application. The PageMaker 5.0 User Manual and Commercial Printing Guide are hereby incorporated by reference. For additional information on desktop publishing generally, see Desktop Publishing in Color by Michael Kieran, published by Bantam Books (1991), which is also incorporated by reference.
High-quality printing, such as that required by the publishing industry, poses many difficult problems in controlling the separations. For example, color printing is compromised if paper is not properly aligned as it makes multiple passes through the plates of a printer. This problem is typically referred to as misregistration. One common solution to the registration problem is to perform a technique known as trapping. Trapping refers to expanding or "spreading" regions of a particular color beyond its normal boundaries, and contracting or "choking" a color region so that a small overlap exists between graphical objects where misregistration may occur. Trapping techniques have traditionally been performed manually. Although tedious, in the past, manual trapping techniques have been used in applications such as magazine publishing, where the time and labor required to create individual traps for each printed page are economically justified.
In recent years, computer systems that perform choking and spreading electronically have come into widespread use. A typical approach has been to: (1) start with a PDL file such as a PostScript file; (2) convert the vector graphics and/or text within the PDL file into a raster (bit mapped) image through a RIP; and (3) trap the raster image using pixel data comprising the image. The third step usually requires a creation of a separate frame buffer for each of the process colors. Each frame buffer is then choked and spread on a pixel-by-pixel basis, and the result used to control the printing of its respective color. As will be appreciated, this approach is very memory intensive.
A more recent approach to electronic trapping is set forth in U.S. Pat. No. 5,295,236 ("'236 patent"), titled "Applying Traps to a Printed Page Specified in a Page Description Language Format" and assigned to the assignee of the present invention. The '236 patent discloses a method and apparatus for electronically trapping a printed color page in a desktop publishing, layout, graphics, or similar applications program. The method translates PDL instructions comprising the printed page into a format suitable for detection and analysis of edges between color regions in the printed page; creates, according to a set of trapping rules, a set of traps between the color edges; and produces a trap output file that includes the traps expressed in the PDL format. Such a method is referred to as a "post-processing approach." An advantage to the method described in the '236 patent is that virtually any printed page that is expressed in a PDL format may be trapped regardless of the application that originally created the graphics, i.e., the originating program. However, this capability is at the expense of software complexity. In particular, the PDL file must be interpreted before traps are created.
Another approach to electronic trapping is to have the originating program also create traps for the graphics. As an example, in drawing programs such as Aldus Freehand.RTM., a user is allowed to add outlines around objects to accommodate trapping. Trapping approaches at the originating program level are beneficial because additional trapping costs may be eliminated, i.e., it is not necessary to utilize a post-processing program or traditional trapping techniques. However, the capability to perform trapping in originating programs is relatively new, and has typically required extensive reworking of the computer code comprising the programs. This, in turn, requires a new release of the software, and involves associated costs with such a release, including extensive debugging. Further, trapping capabilities in originating programs have typically been very limited. One shortcoming is apparent in situations where the background and/or foreground is formed by a number of differently colored objects. This situation arises, for example, where individual text characters overlap more than one object. Typical originating programs with trapping capabilities tend to handle objects such as text or boxes in a relatively course fashion, such that traps are only able to be applied to an entire text block, or at best an entire character. Thus, the trap results in these instances are less than desirable.
In contrast to the prior art discussed above, the invention alleviates the need to change the computer code of the originating application to provide trapping capabilities and reimplement the PDL interpreter. Hence, a trapping method implemented in accordance with the invention may be created, debugged, and distributed independent of the desktop publishing program. Further, as will be described in detail below, the invention allows very accurate trap placement, thus providing results superior to trapping solutions currently available in originating programs.